package com.googlecode.slm.daomapper;

import com.googlecode.slm.domain.dao.Tree;
import com.googlecode.slm.domain.dao.TreeGard;

import java.util.List;

import org.apache.ibatis.annotations.Param;

/**
 * Created by IntelliJ IDEA.
 * User: liguangjian
 * Date: 11-10-8
 * Time: 下午6:40
 * To change this template use File | Settings | File Templates.
 */
public interface TreeMapper {

	/**
	 * 得到一个父节点下的子节点
	 * @param pid 父id
	 * @return
	 */
     public List<Tree> getPidListTree(int pid);
     
     /**
      * 得到id下对就的节点
      * @param id
      * @return
      */
     public Tree getIDTree(int id);
     
     /**
      * 根据用户权, 树节点父节点 查询对应权限下的子节点
      * (不包子节点下的子节点)
      * TreeGard
      * @param gard
      * @return
      */
     public List<Tree> getUserListTree(TreeGard gard);
     
     /**
      * 根据用户权, 树节点父节点 查询对应权限下的子节点
      * @param gard
      * @return
      */
     public List<TreeGard> getListGardTree(TreeGard gard);
     
     
     
     public int deleteGardTree(int gid);
     public int insertListGardTree(List<TreeGard> list);
     public int insertGardTree(TreeGard treeGard);
     
     /**
      * 增加
      * @param tree
      * @return
      */
     public int insetTree(Tree tree);
     
     public int getinsetTreeId();
     
     /**
      * 删除树
      * @param id
      * @return
      */
     public int deleteTree(int id);
     
     /**
      * 根据用户级别 类型查询对应用户是否有该功能
      * @param gid
      * @param className
      * @return
      */
     public Integer getClassGard(@Param("gid") int gid, @Param("className") String className);
     
}
